package com.cskaoyan.javase.oop1._10packing;
/**
 * 包装类型是怎么包装的?
 * 其实很简单,包装类型对象当中会存储一个对应类型的基本数据类型成员变量
 * 这个成员变量叫做value
 * 比如Integer当中就有成员变量:
 *      private final int value;
 * final关键字表示一个常量
 * 这就意外着这个对象一旦创建出来,那么对象当中的value数值就是不可变的
 * 所以对于包装类型对象来说,它是不可变的,对象的状态不可变
 * 一个对象一旦创建完毕,除非销毁它,不然不能改变value的数值
 *
 * 如果引用需要改变value数值,需要指向一个新的对象(新的对象可以是创建出来的,也可以从缓存中取(取决于范围))
 *
 * 以上称之为包装类型对象不可变,对象一旦创建就不能修改value取值,如果引用想要修改取值,那就会指向一个新的对象
 *
 * @since 11:02
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo6 {
    public static void main(String[] args) {
        // 这意味着Integer对象当中的value = 100;
        Integer a = 100;
        // 上面a引用指向的对象和下面a引用指向的对象,实际上根本就不是一个对象了!
        a = 200;
    }
}
